Bipartite Matching
ย - Last update: 2023-08-08

Bipartite Matching

  • ์ด๋ถ„๋งค์นญ, ์ด๋ถ„ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์ตœ๋Œ€ Matching์„ ์ฐพ๋Š” ๊ฒƒ
  • ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” BFS(Edmonds-Karp), DFS(Ford-Fulkerson) ๋™์ผํ•˜์ง€๋งŒ DFS ๋ฐฉ๋ฒ•์ด ์ฝ”๋“œ๊ฐ€ ๋” ๊ฐ„๊ฒฐํ•˜๊ณ  ์„ฑ๋Šฅ๋„ ์šฐ์ˆ˜

Time Complexity

  • Basic Flow Algorithm (Reference): O(fE)O(fE)
  • Worst: O(VE)O(VE)
    • ์ด๋ถ„๊ทธ๋ž˜ํ”„์—์„œ fโ‰คVf \leq V ์ด๊ธฐ ๋•Œ๋ฌธ
    • ๋””๋‹‰์„ ๋ผ์–น์œผ๋ฉด Hopcroft-Karp Algorithm์ด๋ผ๊ณ  ํ•˜๋ฉฐ, ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(EV)O(E\sqrt V)๊ฐ€ ๋œ๋‹ค๊ณ  ํ•จ